package com.zues.samples.service;

import java.util.List;

import com.zues.samples.model.PagerModel;
import com.zues.samples.model.Subject;
import com.zues.samples.service.modelVO.SubjectVO;

public interface SubjectService {
	/**
	 * 查找所有科目
	 * 
	 * @return
	 * @throws Exception
	 */
	public List<Subject> findAllSubjects() throws Exception;

	/**
	 * 通过Id 查找Subject
	 * 
	 * @return
	 * @throws Exception
	 */
	public Subject getByIdSubject(int SubId) throws Exception;

	/**
	 * 创建一个Subject
	 * 
	 * @return
	 * @throws Exception
	 */
	public void createSubject(Subject sub) throws Exception;

	/**
	 * 修改一个Subject
	 * 
	 * @return
	 * @throws Exception
	 */
	public void editSubject(Subject sub) throws Exception;

	/**
	 * 删除 一个 Subject
	 * 
	 * @return
	 * @throws Exception
	 */
	public void deleteSubject(int SubId) throws Exception;

	/**
	 * 修改科目的状态
	 * 
	 * @param SubId
	 * @throws Exception
	 */
	public void updateStatus(Integer SubId, Integer status) throws Exception;

	/**
	 * 分页查询科目
	 * 
	 * @return
	 */
	public PagerModel<SubjectVO> findAllByPage();

	public void saveSubjectStudent(List<String> subjectStudents, Integer subjectId) throws RuntimeException;

}
